package es.nadalgoyo.frikiquest.action;

import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import es.nadalgoyo.frikiquest.TemaActivity;
import es.nadalgoyo.frikiquest.bbdd.tablas.TablaPreguntas;
import es.nadalgoyo.frikiquest.util.Constantes;
import es.nadalgoyo.frikiquest.util.Util;
import es.nadalgoyo.frikiquest.vo.PreguntasVO;
import es.sergionadal.mvc.dispatcher.AbstractDispatcher;

public class ActionCuestionApuesta extends ActionCuestion {

	public ActionCuestionApuesta(AbstractDispatcher dispatcher) {
		super(dispatcher);
		Bundle bundle = new Bundle();

		bundle.putInt(Constantes.NUMERO_APUESTAS, getDispatcher().getBundle()
				.getInt(Constantes.NUMERO_APUESTAS));
		getDispatcher().getBundle().putAll(bundle);

	}

	@Override
	public PreguntasVO getPregunta(TablaPreguntas preguntas, SQLiteDatabase db) {
		String idTema = null;

		if (getDispatcher().getBundle() != null) {
			idTema = getDispatcher().getBundle().containsKey(TemaActivity.TEMA) ? getDispatcher()
					.getBundle().getString(TemaActivity.TEMA) : null;
		}

		try {
			return (PreguntasVO) Util.getRandom(Util.getRandomList(preguntas
					.getPreguntasConcurrencia(db, idTema)));
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
	}

	@Override
	protected int getPuntos() {
		return getDispatcher().getBundle().getInt(TemaActivity.APUESTA);
	}
}
